package com.fl.nj.service;

import com.fl.nj.entity.ServiceType;
import java.util.List;
import java.util.Map;

/**
 * 服务类型Service接口
 * 定义服务类型的业务操作
 */
public interface ServiceTypeService {
    /**
     * 保存服务类型
     * @param serviceType 服务类型实体
     * @return 是否保存成功
     */
    boolean save(ServiceType serviceType);
    
    /**
     * 更新服务类型
     * @param serviceType 服务类型实体
     * @return 是否更新成功
     */
    boolean update(ServiceType serviceType);
    
    /**
     * 根据ID删除服务类型
     * @param id 服务类型ID
     * @return 是否删除成功
     */
    boolean delete(Long id);
    
    /**
     * 根据ID获取服务类型
     * @param id 服务类型ID
     * @return 服务类型实体
     */
    ServiceType getById(Long id);
    
    /**
     * 根据类型名称获取服务类型
     * @param typeName 服务类型名称
     * @return 服务类型实体
     */
    ServiceType getByTypeName(String typeName);
    
    /**
     * 获取所有服务类型
     * @return 服务类型列表
     */
    List<ServiceType> getAll();
    
    /**
     * 分页查询服务类型
     * @param params 包含分页参数和查询条件的Map
     * @return 服务类型列表
     */
    List<ServiceType> getPageList(Map<String, Object> params);
    
    /**
     * 获取服务类型总数
     * @param params 包含查询条件的Map
     * @return 服务类型总数
     */
    int getTotal(Map<String, Object> params);
}